Synchronous network device

ABSTRACT

A physical layer device comprises a first port that embeds a first clock into data transmitted over a first physical medium; a second port that embeds a second clock into data transmitted over a second physical medium; a first selection module that outputs the first clock to the first port based on one of a locally generated clock and a recovered clock; and a second selection module that outputs the second clock to the second port based on one of the locally generated clock and the recovered clock. A method comprises embedding a first clock into data transmitted over a first physical medium; embedding a second clock into data transmitted over a second physical medium; generating the first clock based on one of a locally generated clock and a recovered clock; and generating the second clock based on one of the locally generated clock and the recovered clock.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.60/895,861, filed on Mar. 20, 2007. The disclosure of the aboveapplication is incorporated herein by reference in its entirety.

FIELD

The present disclosure relates to synchronous network devices and moreparticularly to synchronizing clocks among multiple ports of synchronousnetwork devices.

BACKGROUND

The background description provided herein is for the purpose ofgenerally presenting the context of the disclosure. Work of thepresently named inventors, to the extent it is described in thisbackground section, as well as aspects of the description that may nototherwise qualify as prior art at the time of filing, are neitherexpressly nor impliedly admitted as prior art against the presentdisclosure.

Referring now to FIG. 1, a partial functional block diagram of a singleport of a network device is shown. A physical layer (PHY) module 102 forthe port is connected to a physical media 104. For example, the networkdevice may be an Ethernet device, the physical media 104 may includeoptical fiber and the PHY module 102 may be 1000BASE-X compliant. Inanother example, the physical media 104 may include twisted pairs ofcable while the PHY module may be 1000BASE-T compliant.

The PHY module 102 includes a receiver module 110 that receives dataover the physical media 104. The data received over the physical media104 includes an embedded clock, which is recovered by a clock recoverymodule 112. The clock recovery module 112 provides the recovered clock(RX_CLK) to the receiver module 110. RX_CLK is also output from the PHYmodule 102. The receiver module 110 uses RX_CLK to latch data receivedover the physical media 104. The latched data is transmitted to aphysical medium attachment module 114.

The physical medium attachment module 114 transmits data to and receivesdata from a physical coding module 116. The physical coding module 116transmits data to and receives data from a media access control (MAC)module 118 external to the PHY module 102. The PHY module 102 includes atransmitter module 120 that transmits data over the physical media 104from the physical medium attachment module 114. The transmitter module120 transmits data using a transmit clock, TX_CLK, received from outsidethe PHY module 102.

SUMMARY

A physical layer device comprises a first port that embeds a first clockinto data transmitted over a first physical medium; a second port thatembeds a second clock into data transmitted over a second physicalmedium; a first selection module that outputs the first clock to thefirst port based on one of a locally generated clock and a recoveredclock; and a second selection module that outputs the second clock tothe second port based on one of the locally generated clock and therecovered clock.

In other features, the physical layer device further comprises a controlmodule that determines a source of a grandmaster clock, that causes thefirst selection module to output the locally generated clock when thefirst port is the source, and that causes the second selection module tooutput the locally generated clock when the second port is the source.The physical layer device further comprises a third selection modulethat outputs a selected clock based on one of a first recovered clockfrom the first port and a second recovered clock from the second port.

In further features, the first port recovers the first recovered clockfrom data received over the first physical medium and the second portrecovers the second recovered clock from data received over the secondphysical medium. The physical layer device further comprises a controlmodule that determines a source of a grandmaster clock, that causes thethird selection module to output the selected clock based on the firstrecovered clock when the first port is the source, and that causes thethird selection module to output the selected clock based on the secondrecovered clock when the second port is the source.

In still other features, the control module causes the first selectionmodule to output the locally generated clock when the first port is thesource, and that causes the second selection module to output thelocally generated clock when the second port is the source. The physicallayer device further comprises a clock synchronizer that generates therecovered clock based on the selected clock. The first and second portsand the first, second, and third selection modules are implemented in afirst integrated circuit.

In other features, the physical layer device further comprises a clocksynchronizer that generates the recovered clock based on the selectedclock and that is implemented in a second integrated circuit. Thephysical layer device further comprises a third integrated circuitincluding a fourth selection module that outputs a second selectedclock. The clock synchronizer generates the recovered clock based on oneof the selected clock and the second selected clock.

In further features, the physical layer device further comprises acontrol module that determines a source of a grandmaster clock, thatcauses the clock synchronizer to generate the recovered clock based onthe selected clock when the source is from the first integrated circuit,and that causes the clock synchronizer to generate the recovered clockbased on the second selected clock when the source is from the thirdintegrated circuit. The first and second selection modules performhitless switching.

A method for controlling a physical layer device comprises embedding afirst clock into data transmitted over a first physical medium;embedding a second clock into data transmitted over a second physicalmedium; generating the first clock based on one of a locally generatedclock and a recovered clock; and generating the second clock based onone of the locally generated clock and the recovered clock.

In other features, the method further comprises determining a source ofa grandmaster clock; generating the first clock based on the locallygenerated clock when the first physical medium is the source; andgenerating the second clock based on the locally generated clock whenthe second physical medium is the source. The method further comprisesgenerating a selected clock based on one of a first recovered clock anda second recovered clock.

In further features, the method further comprises recovering the firstrecovered clock from data received over the first physical medium; andrecovering the second recovered clock from data received over the secondphysical medium. The method further comprises determining a source of agrandmaster clock; generating the selected clock based on the firstrecovered clock when the first physical medium is the source; andgenerating the selected clock based on the second recovered clock whenthe second physical medium is the source.

In still other features, the method further comprises generating thefirst clock based on the locally generated clock when the first physicalmedium is the source; and generating the second clock based on thelocally generated clock when the second physical medium is the source.The method further comprises generating the recovered clock based on theselected clock. The method further comprises generating a secondselected clock based on a third physical medium; and generating therecovered clock based on one of the selected clock and the secondselected clock.

In other features, the method further comprises determining a source ofa grandmaster clock; generating the recovered clock based on theselected clock when the source is one of the first and second physicalmediums; and generating the recovered clock based on the second selectedclock when the source is the third physical medium. The method furthercomprises performing hitless switching for generating the first clockand for generating the second clock.

A physical layer device comprises a first port that embeds a first clockinto data transmitted over a first physical medium; a second port thatembeds a second clock into data transmitted over a second physicalmedium; first selection means for outputting the first clock to thefirst port based on one of a locally generated clock and a recoveredclock; and second selection means for outputting the second clock to thesecond port based on one of the locally generated clock and therecovered clock.

In other features, the physical layer device further comprises controlmeans for determining a source of a grandmaster clock, for causing thefirst selection means to output the locally generated clock when thefirst port is the source, and for causing the second selection means tooutput the locally generated clock when the second port is the source.The physical layer device further comprises third selection means foroutputting a selected clock based on one of a first recovered clock fromthe first port and a second recovered clock from the second port.

In further features, the first port recovers the first recovered clockfrom data received over the first physical medium and the second portrecovers the second recovered clock from data received over the secondphysical medium. The physical layer device further comprises controlmeans for determining a source of a grandmaster clock, for causing thethird selection means to output the selected clock based on the firstrecovered clock when the first port is the source, and for causing thethird selection means to output the selected clock based on the secondrecovered clock when the second port is the source.

In still other features, the control means causes the first selectionmeans to output the locally generated clock when the first port is thesource, and that causes the second selection means to output the locallygenerated clock when the second port is the source. The physical layerdevice further comprises clock synchronization means for generating therecovered clock based on the selected clock. The first and second portsand the first, second, and third selection means are implemented in afirst integrated circuit.

In other features, the physical layer device further comprises clocksynchronization means for generating the recovered clock based on theselected clock and that is implemented in a second integrated circuit.The physical layer device further comprises a third integrated circuitincluding fourth selection means for outputting a second selected clock.The clock synchronization means generates the recovered clock based onone of the selected clock and the second selected clock.

In further features, the physical layer device further comprises controlmeans for determining a source of a grandmaster clock, for causing theclock synchronization means to generate the recovered clock based on theselected clock when the source is from the first integrated circuit, andfor causing the clock synchronization means to generate the recoveredclock based on the second selected clock when the source is from thethird integrated circuit. The first and second selection means performhitless switching.

Further areas of applicability of the present disclosure will becomeapparent from the detailed description provided hereinafter. It shouldbe understood that the detailed description and specific examples, whileindicating the preferred embodiment of the disclosure, are intended forpurposes of illustration only and are not intended to limit the scope ofthe disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become more fully understood from thedetailed description and the accompanying drawings, wherein:

FIG. 1 is a partial functional block diagram of a single port;

FIG. 2 is a functional block diagram of a multiple port PHY module;

FIG. 3 is a flowchart that depicts exemplary steps performed incontrolling the system of FIG. 2;

FIG. 4A is a functional block diagram of a high definition television;

FIG. 4B is a functional block diagram of a set top box; and

FIG. 4C is a block diagram of a Metro Ethernet network.

DETAILED DESCRIPTION

The following description is merely exemplary in nature and is in no wayintended to limit the disclosure, its application, or uses. For purposesof clarity, the same reference numbers will be used in the drawings toidentify similar elements. As used herein, the phrase at least one of A,B, and C should be construed to mean a logical (A or B or C), using anon-exclusive logical or. It should be understood that steps within amethod may be executed in different order without altering theprinciples of the present disclosure.

As used herein, the term module refers to an Application SpecificIntegrated Circuit (ASIC), an electronic circuit, a processor (shared,dedicated, or group) and memory that execute one or more software orfirmware programs, a combinational logic circuit, and/or other suitablecomponents that provide the described functionality.

To allow a network device to have the properties of a synchronousnetwork, such as SONET (synchronous optical network), clocks of thedevices in the network device are synchronized. For example only, thenetwork device may be a wired Ethernet network device. One method ofsynchronization is to send packets having time stamps. Usingdeterminations of one-way delay and round-trip delay based on the timestamps, devices in the network can synchronize their internal clocks.These time stamps may be used to decrease latency and variabilityintroduced by a protocol stack. Network based delay, such as delaycaused by traffic congestion, may affect the accuracy of the timestamps.

Another approach to clock synchronization involves using a recoveredclock. In this approach, a single node is chosen as the source of agrandmaster clock. This node may be chosen because of the quality of itsclock. For example, a node connected to or receiving time informationfrom an atomic clock may be viewed as the most desirable clock source.This grandmaster clock is then distributed to the other nodes.

When the node having the grandmaster clock source links with anothernode, the grandmaster clock is used when transmitting data. Thisgrandmaster clock is then recovered by the receiving node. The receivingnode adjusts its local clock based thereon and then transmits data tonodes linked with the second node (using the clock adjusted by thegrandmaster clock). In this way, the grandmaster clock can bedistributed to all the nodes.

A node may have multiple ports. The grandmaster clock may be received onone port and sent on the remaining ports. Each port from which a nodetransmits the grandmaster clock may be called a synchronous master,while each port receiving the grandmaster clock may be referred to as asynchronous slave. Synchronous master/slave relationships may beestablished independent of PHY module. For example, synchronousmaster/slave relationships may be established for twisted pair physicalmedia and optical fiber physical media.

The master/slave relationships may be configured manually by a networkadministrator. Alternatively, a protocol may be defined where the nodesdynamically determine the node that will be the grandmaster clock sourceand the tree through which the grandmaster clock source will bedistributed. This protocol may be integrated with a protocol such as aspanning tree protocol, which prevents circular loops from beingcreated.

In 1000BASE-T, another form of master/slave relationship is defined.This is defined in clause 40 of IEEE 802.3, the disclosure of which isincorporated herein by reference in its entirety. According to clause40, two nodes that desire to establish a link must decide which will bethe master and which will be the slave. Often, personal computers preferto be the slave while network switches prefer to be the master.

If both sides prefer the same role, each may pick a random number and acomparison of the random numbers is used to make the assignment. Insteadof preferring to be master, one of the nodes may be forced to be master.In this case, the node will become master unless its linked partner isalso being forced to be master. When both nodes are being forced toassume the same role, a link may not be established.

The clause 40 master/slave relationship may disagree with thesynchronous master/slave relationship. If a protocol is defined todynamically determine the distribution of the grandmaster clock, theclause 40 master/slave relationships could be assigned to match thesynchronous relationships at the same time. The links in the network canthen be broken and reestablished, thereby establishing the desiredmaster/slave relationships for both synchronous arrangements and clause40. Alternatively, the clause 40 master/slave relationships may bemanually programmed, such as when the synchronous master/slaverelationships are manually programmed.

In brief, FIG. 2 shows a group of multiport PHY integrated circuits(ICs) that allow programmatic control of grandmaster clock distribution.Multiple ports, and in the example of FIG. 2, all ports, may be used asthe source of the grandmaster clock. The recovered clock from the portthat is the source of the grandmaster clock is provided to a clocksynchronizer, which cleans up the recovered grandmaster clock. The clocksynchronizer may perform such operations as removing jitter, controllingthe voltage swing, and establishing fixed edge rates. The improvedgrandmaster clock may then be provided to all other ports for use intransmission.

When these other ports are transmitting using the improved grandmasterclock, their link partners will be receiving the grandmaster clock. Theport of a node that is receiving the grandmaster clock may transmitusing a local oscillator to prevent a loop from occurring when therecovered clock is passed to the clock synchronizer and back to the sameport. FIG. 3 depicts exemplary steps performed in operating the systemof FIG. 2, and FIGS. 4A-4B provide exemplary environments where thesystem of FIG. 2 may be used.

Referring now to FIG. 2, a functional block diagram of a multiple portPHY module is shown. A multi-port PHY IC 202-1 includes multiple PHYports 204-1. In the example of FIG. 2, the multi-port PHY IC 202-1includes four PHY ports 204-1.

The RX_CLK from each of the PHY ports 204-1 is received by an outputmultiplexer 220-1. The output multiplexer 220-1 is controlled by acontrol module 230. The multiplexer 220-1 selects the RX_CLK from theport within the multi-port PHY IC 202-1 that is receiving thegrandmaster clock. This selection may be programmed into the controlmodule 230, such as by setting a value in a control register.

The output multiplexer 220-1 transmits the selected RX_CLK to a clocksynchronizer 240. The clock synchronizer 240 cleans up the receivedclock and transmits the improved clock back to the multi-port PHY IC202-1. The multi-port PHY IC 202-1 also receives a local oscillatorclock. The local oscillator clock may be generated by an externalcrystal oscillator 250-1. In various implementations, only the crystalis external to the multi-port PHY IC 202-1, while the drive circuitryfor the crystal is located within the multi-port PHY IC 202-1. Invarious other implementations, the local oscillator is located entirelywithin the multiport PHY IC 202-1.

Each of the PHY ports 204-1 is associated with an input multiplexer260-1. The input multiplexer 260-1 selects the clock from either thelocal oscillator or the improved grandmaster clock from the clocksynchronizer 240 as the TX_CLK for the port 204-1. These multiplexers260-1 are also controlled by the control module. If a port 204-1 isdesignated as the source of the grandmaster clock, the multiplexer 260-1will select the local oscillator to be the TX_CLK for that port.Otherwise, the TX_CLK will be received from the clock synchronizer 240.

The clock synchronizer 240 may use a stable reference clock from a clockreference 270 to process the selected clock input. The reference clockmay be used by a phase locked loop within the clock synchronizer 240. Invarious implementations, multiple multi-port PHY ICs may be used. InFIG. 2, N multi-port PHY ICs from 202-1 through 202-N are shown. Theselected output RX_CLK from the multiplexers 220 is received by theclock synchronizer 240.

The control module 230 indicates to the clock synchronizer 240 which ofthe multi-port PHY ICs 202 will be the source of the grandmaster clock.The RX_CLK from that multi-port PHY IC 202 will be used by the clocksynchronizer 240 to provide the improved clock to each of the multi-portPHY ICs 202. If there are more multi-port PHY ICs 202 than there areinputs to the clock synchronizer 240, an additional multiplexer may beused.

The multiplexers 260 may provide gradual, or hitless, switching from oneclock input to another. This can prevent glitches from occurring in theTX_CLK provided to the ports 204. The multiplexers 220 may also providehitless switching. In addition, the clock synchronizer 240 may performhitless switching when switching between received RX_CLKs from themulti-port PHY ICs 202.

Referring now to FIG. 3, a flowchart depicts exemplary steps performedin controlling the system of FIG. 2. Control begins in step 302, where aport is selected to be a source of the grandmaster clock. The selectedport is assumed to be recovering the grandmaster clock fromtransmissions by its link partner. Control continues in step 304, wherethe multi-port PHY IC is configured to output the RX_CLK of thatgrandmaster source port.

Control continues in step 306, where the TX_CLK for that grandmastersource port is configured to be taken from the local oscillator. Controlcontinues in step 308, where the TX_CLK for all other ports isconfigured to be taken from the output of the clock synchronizer.Control continues in step 310, where the clock synchronizer isconfigured to synchronize based on the recovered clock from themulti-port PHY IC that includes the grandmaster source port.

In various implementations, the local node may be the original source ofthe grandmaster clock. In this case, the grandmaster clock may beprovided to the clock synchronizer from the source of the grandmasterclock. For example, this may come from an atomic clock or some otherstable clock. No ports within the multi-port PHY IC will be the sourceof the grandmaster clock therefore. Each port will therefore transmitusing the output of the clock synchronizer as the TX_CLK. The RX_CLKselected by the multiplexers will be irrelevant because the clocksynchronizer is using a local grandmaster clock.

Referring now to FIGS. 4A-4B, various exemplary implementationsincorporating the teachings of the present disclosure are shown.Referring now to FIG. 4A, the teachings of the disclosure can beimplemented in a network interface 443 of a high definition television(HDTV) 437. The HDTV 437 includes an HDTV control module 438, a display439, a power supply 440, memory 441, a storage device 442, the networkinterface 443, and an external interface 445. If the network interface443 includes a wireless local area network interface, an antenna (notshown) may be included.

The HDTV 437 can receive input signals from the network interface 443and/or the external interface 445, which can send and receive data viacable, broadband Internet, and/or satellite. The HDTV control module 438may process the input signals, including encoding, decoding, filtering,and/or formatting, and generate output signals. The output signals maybe communicated to one or more of the display 439, memory 441, thestorage device 442, the network interface 443, and the externalinterface 445.

Memory 441 may include random access memory (RAM) and/or nonvolatilememory. Nonvolatile memory may include any suitable type ofsemiconductor or solid-state memory, such as flash memory (includingNAND and NOR flash memory), phase change memory, magnetic RAM, andmulti-state memory, in which each memory cell has more than two states.The storage device 442 may include an optical storage drive, such as aDVD drive, and/or a hard disk drive (HDD). The HDTV control module 438communicates externally via the network interface 443 and/or theexternal interface 445. The power supply 440 provides power to thecomponents of the HDTV 437.

Referring now to FIG. 4B, the teachings of the disclosure can beimplemented in a network interface 485 of a set top box 478. The set topbox 478 includes a set top control module 480, a display 481, a powersupply 482, memory 483, a storage device 484, and the network interface485. If the network interface 485 includes a wireless local area networkinterface, an antenna (not shown) may be included.

The set top control module 480 may receive input signals from thenetwork interface 485 and an external interface 487, which can send andreceive data via cable, broadband Internet, and/or satellite. The settop control module 480 may process signals, including encoding,decoding, filtering, and/or formatting, and generate output signals. Theoutput signals may include audio and/or video signals in standard and/orhigh definition formats. The output signals may be communicated to thenetwork interface 485 and/or to the display 481. The display 481 mayinclude a television, a projector, and/or a monitor.

The power supply 482 provides power to the components of the set top box478. Memory 483 may include random access memory (RAM) and/ornonvolatile memory. Nonvolatile memory may include any suitable type ofsemiconductor or solid-state memory, such as flash memory (includingNAND and NOR flash memory), phase change memory, magnetic RAM, andmulti-state memory, in which each memory cell has more than two states.The storage device 484 may include an optical storage drive, such as aDVD drive, and/or a hard disk drive (HDD).

Referring now to FIG. 4C, the teachings of the disclosure can beimplemented in a network switch (e.g., any or all of network switches454) of a Metro Ethernet 450. Generally, a Metro Ethernet is a computernetwork based on the Ethernet standard and which covers a metropolitanarea. A Metro Ethernet is commonly used as a metropolitan access networkto connect subscribers and businesses to a Wide Area Network, such asthe Internet.

In various implementations, each network switch 454 of the MetroEthernet 450 includes a multiple port PHY module 456 (e.g., as shown inFIG. 2) to distribute a grandmaster clock 458 to other switches 454and/or end nodes 452. The teachings of the disclosure can further beimplemented in other types of networks—e.g., a synchronous Ethernet. Forexample, using techniques disclosed herein, some or all laboratoryequipment can be synchronized to the same clock, or some or all factoryfloor robots can be synchronized to the same clock.

The broad teachings of the disclosure can be implemented in a variety offorms. Therefore, while this disclosure includes particular examples,the true scope of the disclosure should not be so limited since othermodifications will become apparent upon a study of the drawings, thespecification, and the following claims.

1. A physical layer device comprising: a first port that embeds a firstclock into data transmitted over a first physical medium; a second portthat embeds a second clock into data transmitted over a second physicalmedium; a first selection module that outputs the first clock to thefirst port based on one of a locally generated clock and a recoveredclock; and a second selection module that outputs the second clock tothe second port based on one of the locally generated clock and therecovered clock.
 2. The physical layer device of claim 1, furthercomprising a control module that determines a source of a grandmasterclock, that causes the first selection module to output the locallygenerated clock when the first port is the source, and that causes thesecond selection module to output the locally generated clock when thesecond port is the source.
 3. The physical layer device of claim 1,further comprising a third selection module that outputs a selectedclock based on one of a first recovered clock from the first port and asecond recovered clock from the second port.
 4. The physical layerdevice of claim 3, wherein the first port recovers the first recoveredclock from data received over the first physical medium and the secondport recovers the second recovered clock from data received over thesecond physical medium.
 5. The physical layer device of claim 3, furthercomprising a control module that determines a source of a grandmasterclock, that causes the third selection module to output the selectedclock based on the first recovered clock when the first port is thesource, and that causes the third selection module to output theselected clock based on the second recovered clock when the second portis the source.
 6. The physical layer device of claim 5, wherein thecontrol module causes the first selection module to output the locallygenerated clock when the first port is the source, and that causes thesecond selection module to output the locally generated clock when thesecond port is the source.
 7. The physical layer device of claim 3,further comprising a clock synchronizer that generates the recoveredclock based on the selected clock.
 8. The physical layer device of claim3, wherein the first and second ports and the first, second, and thirdselection modules are implemented in a first integrated circuit.
 9. Thephysical layer device of claim 8, further comprising a clocksynchronizer that generates the recovered clock based on the selectedclock and that is implemented in a second integrated circuit.
 10. Thephysical layer device of claim 9, further comprising a third integratedcircuit including a fourth selection module that outputs a secondselected clock, wherein the clock synchronizer generates the recoveredclock based on one of the selected clock and the second selected clock.11. The physical layer device of claim 10, further comprising a controlmodule that determines a source of a grandmaster clock, that causes theclock synchronizer to generate the recovered clock based on the selectedclock when the source is from the first integrated circuit, and thatcauses the clock synchronizer to generate the recovered clock based onthe second selected clock when the source is from the third integratedcircuit.
 12. The physical layer device of claim 1, wherein the first andsecond selection modules perform hitless switching.
 13. A method forcontrolling a physical layer device, comprising: embedding a first clockinto data transmitted over a first physical medium; embedding a secondclock into data transmitted over a second physical medium; generatingthe first clock based on one of a locally generated clock and arecovered clock; and generating the second clock based on one of thelocally generated clock and the recovered clock.
 14. The method of claim13, further comprising: determining a source of a grandmaster clock;generating the first clock based on the locally generated clock when thefirst physical medium is the source; and generating the second clockbased on the locally generated clock when the second physical medium isthe source.
 15. The method of claim 13, further comprising generating aselected clock based on one of a first recovered clock and a secondrecovered clock.
 16. The method of claim 15, further comprising:recovering the first recovered clock from data received over the firstphysical medium; and recovering the second recovered clock from datareceived over the second physical medium.
 17. The method of claim 15,further comprising: determining a source of a grandmaster clock;generating the selected clock based on the first recovered clock whenthe first physical medium is the source; and generating the selectedclock based on the second recovered clock when the second physicalmedium is the source.
 18. The method of claim 17, further comprising:generating the first clock based on the locally generated clock when thefirst physical medium is the source; and generating the second clockbased on the locally generated clock when the second physical medium isthe source.
 19. The method of claim 15, further comprising generatingthe recovered clock based on the selected clock.
 20. The method of claim15, further comprising: generating a second selected clock based on athird physical medium; and generating the recovered clock based on oneof the selected clock and the second selected clock.
 21. The method ofclaim 20, further comprising: determining a source of a grandmasterclock; generating the recovered clock based on the selected clock whenthe source is one of the first and second physical mediums; andgenerating the recovered clock based on the second selected clock whenthe source is the third physical medium.
 22. The method of claim 13,further comprising performing hitless switching for generating saidfirst clock and for generating said second clock.